Skip to main content

Integrações Nativas da Plataforma

Localização - lat,long do usuário

Para pegar a localização de um usuário, podemos fazer de duas formas: pelo CEP ou por coordenadas geográficas.

A função getAddress() é responsável por extrair informações sobre o endereço do usuário, através das coordenadas geográficas dele. Inicialmente a localização por coordenadas é extraída no formato (-23.49418148290683 | -46.5084906596817). Dividimos essa localização e armazenamos em duas variáveis, uma que contém a latitude (lat) e outra que contém a longitude (long):

Integração Nativa

Integração Nativa

Como visto nas imagens acima, as variáveis de latitude e longitude são utilizadas como parâmetros da função getAddress. Como retorno, vem um objeto que contém as informações de endereço, que armazenamos em variáveis de ambiente:

Integração Nativa

Integração Nativa

Há alguns casos em que o objeto de retorno pode não vir com todas as informações preenchidas, referente ao endereço. Para esse caso existem tratativas já conhecidas e utilizadas, mas também há espaços para soluções dos outros desenvolvedores.

1 - Inverter lat e long:

Uma primeira tratativa, consiste em trocar as posições do lat e long na função de getAddress, solução que pode funcionar em alguns casos:

Integração Nativa

Integração Nativa

2 - Verificar se a cidade e o estado foram captados:

Há casos em que as únicas informações que não vem da função são o logradouro e o bairro. Assim, uma solução seria redirecionar o usuário para um bloco de pergunta e input que pergunta a rua e o bairro do usuário:

Integração Nativa

3 - Redirecionar para a busca por CEP:

Em último caso, quando nenhuma informação foi extraída, direcionamos o usuário de volta ao bloco pai de localização e pedimos ao usuário que tente a localização via CEP.

Integração Nativa

Localização via CEP

Para a busca de localização via CEP, utilizamos a função isValidCEP()

Integração Nativa

Semelhantemente à busca por envio de coordenadas geográficas, a função recebe como parâmetro o CEP (em um formato apenas com números) e retorna um objeto que contém as informações de endereço.

Primeiramente armazenamos o objeto de resposta da função em uma variável, verificamos se houve uma resposta válida por parte da função, ou seja, se a requisição funcionou corretamente, e depois verificamos se a informação de logradouro, que comumente é o campo que não vem preenchido nos casos de endereços que vêm incompletos, veio preenchida, para, então, armazenarmos os dados do objeto em variáveis de ambiente:

Integração Nativa

Assim como, na busca de localização por coordenadas, o objeto de retorno pode vir com alguns campos vazios, sendo o mais comum o campo de logradouro. Para isso temos uma tratativa para direcionar o usuário a um bloco de pergunta e input que pergunta a rua e o bairro do usuário:

Integração Nativa

Validador de CPF

Para realizar a validação de um CPF, utilizamos a função isValidCPF(). É uma função que recebe uma string com o CPF (apenas com os números) e retorna o cpf caso seja válido. Caso contrário a função retorna um espaço vazio (“”).

Integração Nativa

Integração Nativa

No exemplo acima, a saída esperada é “cpf inválido”.

Validador de CNPJ

Para validar um CNPJ, utilizamos a função isValidCNPJ que recebe como parâmetro uma string com o CNPJ formatado (apenas com os números) e retorna vazio (“”) caso não seja válido, e retorna o próprio CNPJ passado como parâmetro, caso contrário.

Integração Nativa

Integração Nativa

Na imagem acima a saída esperada é “cnpj ok” e o cnpj passado como parâmetro.

Serviço de OCR

Para realizar uma requisição de OCR, utilizamos a função “Função OCR(url)”

Integração Nativa

Essa função recebe como parâmetro uma url que é proveniente do arquivo de um boleto.

Como resposta dessa requisição, a função retorna um arranjo, contendo todas as informações que foram possíveis captar pelo OCR.

Para extrair a variável que será lida por um OCR, utilizamos um bloco avançado e selecionamos uma variável qualquer-input Integração Nativa

Em seguida, seguimos com o procedimento de armazenar as entradas em variáveis, validar o formato da entrada e realizar as manipulações desejadas e seguir no fluxo.

Ex. de aplicação:

Integração Nativa

No exemplo acima, a vars.ec_pega armazena a url do arquivo de entrada e é utilizada para dividir os casos entre o caminho feliz, caso o arquivo seja o que estávamos esperando, e caminho triste, quando a entrada é inesperada. A variável vars.ec_foto armazena a entrada em definitivo e é passada como parâmetro na função. A resposta da função é armazenada na vars.ec_data e o fluxo segue em diante.

Envio de SMS

Para realizar o envio de SMS, utilizamos a função sendSMSCode que recebe como parâmetros, o número de celular para o qual será enviado o sms, e a mensagem que deseja enviar por sms.

Ex:

Integração Nativa